[INFO] fetching crate gc-sequence 0.2.2...
[INFO] fixing gc-sequence-0.2.2 against try#622891a4e29178280638a6b63a8908bde2c0c854+cargoflags=-Zfix-edition=end=2015,2024 for pr-157817-2
[INFO] extracting crate gc-sequence 0.2.2 into /workspace/builds/worker-6-tc2/source
[INFO] started tweaking crates.io crate gc-sequence 0.2.2
[INFO] finished tweaking crates.io crate gc-sequence 0.2.2
[INFO] tweaked toml for crates.io crate gc-sequence 0.2.2 written to /workspace/builds/worker-6-tc2/source/Cargo.toml
[INFO] validating manifest of crates.io crate gc-sequence 0.2.2 on toolchain 622891a4e29178280638a6b63a8908bde2c0c854
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+622891a4e29178280638a6b63a8908bde2c0c854" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+622891a4e29178280638a6b63a8908bde2c0c854" "generate-lockfile" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Updating crates.io index
[INFO] [stderr]      Locking 8 packages to latest compatible versions
[INFO] [stderr]       Adding gc-arena v0.2.2 (available: v0.6.0)
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+622891a4e29178280638a6b63a8908bde2c0c854" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc2/source:/opt/rustwide/workdir:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-m" "1610612736" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:3a6becf2bc8dde7f3fa57ede90e4f284e72d296796fc446bbb1e2c7cc0530151" "sleep" "infinity", kill_on_drop: false }`
[INFO] [stdout] 8eb29a940d1e9222bfe5920de4aaf6613524b739176e7d78b89c1aa5d2e85d0a
[INFO] running `Command { std: "docker" "start" "8eb29a940d1e9222bfe5920de4aaf6613524b739176e7d78b89c1aa5d2e85d0a", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-w" "/opt/rustwide/workdir" "--user" "0:0" "8eb29a940d1e9222bfe5920de4aaf6613524b739176e7d78b89c1aa5d2e85d0a" "/opt/rustwide/cargo-home/bin/cargo" "+622891a4e29178280638a6b63a8908bde2c0c854" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "8eb29a940d1e9222bfe5920de4aaf6613524b739176e7d78b89c1aa5d2e85d0a", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=" "-e" "RUSTDOCFLAGS=" "-w" "/opt/rustwide/workdir" "--user" "0:0" "8eb29a940d1e9222bfe5920de4aaf6613524b739176e7d78b89c1aa5d2e85d0a" "/opt/rustwide/cargo-home/bin/cargo" "+622891a4e29178280638a6b63a8908bde2c0c854" "fix" "--allow-no-vcs" "--allow-dirty" "--frozen" "--all" "--all-targets" "--message-format=json" "-Zfix-edition=end=2015,2024", kill_on_drop: false }`
[INFO] [stderr] crater-edition-check: migrating to next edition
[INFO] [stderr]    Migrating Cargo.toml from 2018 edition to 2021
[INFO] [stderr]    Compiling syn v1.0.109
[INFO] [stderr]    Compiling synstructure v0.12.6
[INFO] [stderr]    Compiling gc-arena-derive v0.2.2
[INFO] [stderr]     Checking gc-arena v0.2.2
[INFO] [stderr]     Checking gc-sequence v0.2.2 (/opt/rustwide/workdir)
[INFO] [stderr]    Migrating src/lib.rs from 2018 edition to 2021
[INFO] [stderr]    Migrating tests/tests.rs from 2018 edition to 2021
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 5.78s
[INFO] [stderr] crater-edition-check: gc-sequence v0.2.2 (/opt/rustwide/workdir) updating edition from 2018 to 2021
[INFO] [stderr]     Checking gc-sequence v0.2.2 (/opt/rustwide/workdir)
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]  --> src/and_then.rs:6:17
[INFO] [stdout]   |
[INFO] [stdout] 6 | #[derive(Debug, Collect)]
[INFO] [stdout]   |                 ^------
[INFO] [stdout]   |                 |
[INFO] [stdout]   |                 `Collect` is not local
[INFO] [stdout]   |                 move the `impl` block outside of this constant `_DERIVE_gc_arena_Collect_FOR_AndThen`
[INFO] [stdout] 7 | #[collect(no_drop)]
[INFO] [stdout] 8 | pub enum AndThen<S, F, I> {
[INFO] [stdout]   |          ------- `AndThen` is not local
[INFO] [stdout]   |
[INFO] [stdout]   = note: the derive macro `Collect` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]   = note: the derive macro `Collect` may come from an old version of the `gc_arena_derive` crate, try updating your dependency with `cargo update -p gc_arena_derive`
[INFO] [stdout]   = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]   = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]   = note: `#[warn(non_local_definitions)]` on by default
[INFO] [stdout]   = note: this warning originates in the derive macro `Collect` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]  --> src/and_then.rs:6:17
[INFO] [stdout]   |
[INFO] [stdout] 6 | #[derive(Debug, Collect)]
[INFO] [stdout]   |                 ^------
[INFO] [stdout]   |                 |
[INFO] [stdout]   |                 `MustNotImplDrop` is not local
[INFO] [stdout]   |                 move the `impl` block outside of this constant `_DERIVE_gc_arena_MustNotImplDrop_FOR_AndThen`
[INFO] [stdout] 7 | #[collect(no_drop)]
[INFO] [stdout] 8 | pub enum AndThen<S, F, I> {
[INFO] [stdout]   |          ------- `AndThen` is not local
[INFO] [stdout]   |
[INFO] [stdout]   = note: the derive macro `Collect` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]   = note: the derive macro `Collect` may come from an old version of the `gc_arena_derive` crate, try updating your dependency with `cargo update -p gc_arena_derive`
[INFO] [stdout]   = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]   = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]   = note: this warning originates in the derive macro `Collect` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/and_then.rs:49:17
[INFO] [stdout]    |
[INFO] [stdout] 49 | #[derive(Debug, Collect)]
[INFO] [stdout]    |                 ^------
[INFO] [stdout]    |                 |
[INFO] [stdout]    |                 `Collect` is not local
[INFO] [stdout]    |                 move the `impl` block outside of this constant `_DERIVE_gc_arena_Collect_FOR_AndThenWith`
[INFO] [stdout] 50 | #[collect(no_drop)]
[INFO] [stdout] 51 | pub enum AndThenWith<S, C, F, I> {
[INFO] [stdout]    |          ----------- `AndThenWith` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Collect` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Collect` may come from an old version of the `gc_arena_derive` crate, try updating your dependency with `cargo update -p gc_arena_derive`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]    = note: this warning originates in the derive macro `Collect` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/and_then.rs:49:17
[INFO] [stdout]    |
[INFO] [stdout] 49 | #[derive(Debug, Collect)]
[INFO] [stdout]    |                 ^------
[INFO] [stdout]    |                 |
[INFO] [stdout]    |                 `MustNotImplDrop` is not local
[INFO] [stdout]    |                 move the `impl` block outside of this constant `_DERIVE_gc_arena_MustNotImplDrop_FOR_AndThenWith`
[INFO] [stdout] 50 | #[collect(no_drop)]
[INFO] [stdout] 51 | pub enum AndThenWith<S, C, F, I> {
[INFO] [stdout]    |          ----------- `AndThenWith` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Collect` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Collect` may come from an old version of the `gc_arena_derive` crate, try updating your dependency with `cargo update -p gc_arena_derive`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]    = note: this warning originates in the derive macro `Collect` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]  --> src/done.rs:6:17
[INFO] [stdout]   |
[INFO] [stdout] 6 | #[derive(Debug, Collect)]
[INFO] [stdout]   |                 ^------
[INFO] [stdout]   |                 |
[INFO] [stdout]   |                 `Collect` is not local
[INFO] [stdout]   |                 move the `impl` block outside of this constant `_DERIVE_gc_arena_Collect_FOR_Done`
[INFO] [stdout] 7 | #[collect(no_drop)]
[INFO] [stdout] 8 | pub struct Done<O>(Option<O>);
[INFO] [stdout]   |            ---- `Done` is not local
[INFO] [stdout]   |
[INFO] [stdout]   = note: the derive macro `Collect` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]   = note: the derive macro `Collect` may come from an old version of the `gc_arena_derive` crate, try updating your dependency with `cargo update -p gc_arena_derive`
[INFO] [stdout]   = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]   = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]   = note: this warning originates in the derive macro `Collect` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]  --> src/done.rs:6:17
[INFO] [stdout]   |
[INFO] [stdout] 6 | #[derive(Debug, Collect)]
[INFO] [stdout]   |                 ^------
[INFO] [stdout]   |                 |
[INFO] [stdout]   |                 `MustNotImplDrop` is not local
[INFO] [stdout]   |                 move the `impl` block outside of this constant `_DERIVE_gc_arena_MustNotImplDrop_FOR_Done`
[INFO] [stdout] 7 | #[collect(no_drop)]
[INFO] [stdout] 8 | pub struct Done<O>(Option<O>);
[INFO] [stdout]   |            ---- `Done` is not local
[INFO] [stdout]   |
[INFO] [stdout]   = note: the derive macro `Collect` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]   = note: the derive macro `Collect` may come from an old version of the `gc_arena_derive` crate, try updating your dependency with `cargo update -p gc_arena_derive`
[INFO] [stdout]   = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]   = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]   = note: this warning originates in the derive macro `Collect` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]  --> src/flatten.rs:6:10
[INFO] [stdout]   |
[INFO] [stdout] 6 | #[derive(Collect)]
[INFO] [stdout]   |          ^------
[INFO] [stdout]   |          |
[INFO] [stdout]   |          `Collect` is not local
[INFO] [stdout]   |          move the `impl` block outside of this constant `_DERIVE_gc_arena_Collect_FOR_Flatten`
[INFO] [stdout] 7 | #[collect(no_drop)]
[INFO] [stdout] 8 | pub enum Flatten<'gc, S>
[INFO] [stdout]   |          ------- `Flatten` is not local
[INFO] [stdout]   |
[INFO] [stdout]   = note: the derive macro `Collect` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]   = note: the derive macro `Collect` may come from an old version of the `gc_arena_derive` crate, try updating your dependency with `cargo update -p gc_arena_derive`
[INFO] [stdout]   = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]   = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]   = note: this warning originates in the derive macro `Collect` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]  --> src/flatten.rs:6:10
[INFO] [stdout]   |
[INFO] [stdout] 6 | #[derive(Collect)]
[INFO] [stdout]   |          ^------
[INFO] [stdout]   |          |
[INFO] [stdout]   |          `MustNotImplDrop` is not local
[INFO] [stdout]   |          move the `impl` block outside of this constant `_DERIVE_gc_arena_MustNotImplDrop_FOR_Flatten`
[INFO] [stdout] 7 | #[collect(no_drop)]
[INFO] [stdout] 8 | pub enum Flatten<'gc, S>
[INFO] [stdout]   |          ------- `Flatten` is not local
[INFO] [stdout]   |
[INFO] [stdout]   = note: the derive macro `Collect` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]   = note: the derive macro `Collect` may come from an old version of the `gc_arena_derive` crate, try updating your dependency with `cargo update -p gc_arena_derive`
[INFO] [stdout]   = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]   = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]   = note: this warning originates in the derive macro `Collect` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]  --> src/flatten_result.rs:6:10
[INFO] [stdout]   |
[INFO] [stdout] 6 | #[derive(Collect)]
[INFO] [stdout]   |          ^------
[INFO] [stdout]   |          |
[INFO] [stdout]   |          `Collect` is not local
[INFO] [stdout]   |          move the `impl` block outside of this constant `_DERIVE_gc_arena_Collect_FOR_FlattenOk`
[INFO] [stdout] 7 | #[collect(no_drop)]
[INFO] [stdout] 8 | pub enum FlattenOk<S, I> {
[INFO] [stdout]   |          --------- `FlattenOk` is not local
[INFO] [stdout]   |
[INFO] [stdout]   = note: the derive macro `Collect` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]   = note: the derive macro `Collect` may come from an old version of the `gc_arena_derive` crate, try updating your dependency with `cargo update -p gc_arena_derive`
[INFO] [stdout]   = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]   = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]   = note: this warning originates in the derive macro `Collect` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]  --> src/flatten_result.rs:6:10
[INFO] [stdout]   |
[INFO] [stdout] 6 | #[derive(Collect)]
[INFO] [stdout]   |          ^------
[INFO] [stdout]   |          |
[INFO] [stdout]   |          `MustNotImplDrop` is not local
[INFO] [stdout]   |          move the `impl` block outside of this constant `_DERIVE_gc_arena_MustNotImplDrop_FOR_FlattenOk`
[INFO] [stdout] 7 | #[collect(no_drop)]
[INFO] [stdout] 8 | pub enum FlattenOk<S, I> {
[INFO] [stdout]   |          --------- `FlattenOk` is not local
[INFO] [stdout]   |
[INFO] [stdout]   = note: the derive macro `Collect` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]   = note: the derive macro `Collect` may come from an old version of the `gc_arena_derive` crate, try updating your dependency with `cargo update -p gc_arena_derive`
[INFO] [stdout]   = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]   = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]   = note: this warning originates in the derive macro `Collect` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]  --> src/map.rs:6:17
[INFO] [stdout]   |
[INFO] [stdout] 6 | #[derive(Debug, Collect)]
[INFO] [stdout]   |                 ^------
[INFO] [stdout]   |                 |
[INFO] [stdout]   |                 `Collect` is not local
[INFO] [stdout]   |                 move the `impl` block outside of this constant `_DERIVE_gc_arena_Collect_FOR_Map`
[INFO] [stdout] 7 | #[collect(no_drop)]
[INFO] [stdout] 8 | pub struct Map<S, F>(S, Option<StaticCollect<F>>);
[INFO] [stdout]   |            --- `Map` is not local
[INFO] [stdout]   |
[INFO] [stdout]   = note: the derive macro `Collect` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]   = note: the derive macro `Collect` may come from an old version of the `gc_arena_derive` crate, try updating your dependency with `cargo update -p gc_arena_derive`
[INFO] [stdout]   = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]   = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]   = note: this warning originates in the derive macro `Collect` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]  --> src/map.rs:6:17
[INFO] [stdout]   |
[INFO] [stdout] 6 | #[derive(Debug, Collect)]
[INFO] [stdout]   |                 ^------
[INFO] [stdout]   |                 |
[INFO] [stdout]   |                 `MustNotImplDrop` is not local
[INFO] [stdout]   |                 move the `impl` block outside of this constant `_DERIVE_gc_arena_MustNotImplDrop_FOR_Map`
[INFO] [stdout] 7 | #[collect(no_drop)]
[INFO] [stdout] 8 | pub struct Map<S, F>(S, Option<StaticCollect<F>>);
[INFO] [stdout]   |            --- `Map` is not local
[INFO] [stdout]   |
[INFO] [stdout]   = note: the derive macro `Collect` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]   = note: the derive macro `Collect` may come from an old version of the `gc_arena_derive` crate, try updating your dependency with `cargo update -p gc_arena_derive`
[INFO] [stdout]   = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]   = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]   = note: this warning originates in the derive macro `Collect` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/map.rs:34:17
[INFO] [stdout]    |
[INFO] [stdout] 34 | #[derive(Debug, Collect)]
[INFO] [stdout]    |                 ^------
[INFO] [stdout]    |                 |
[INFO] [stdout]    |                 `Collect` is not local
[INFO] [stdout]    |                 move the `impl` block outside of this constant `_DERIVE_gc_arena_Collect_FOR_MapWith`
[INFO] [stdout] 35 | #[collect(no_drop)]
[INFO] [stdout] 36 | pub struct MapWith<S, C, F>(S, Option<(C, StaticCollect<F>)>);
[INFO] [stdout]    |            ------- `MapWith` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Collect` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Collect` may come from an old version of the `gc_arena_derive` crate, try updating your dependency with `cargo update -p gc_arena_derive`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]    = note: this warning originates in the derive macro `Collect` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/map.rs:34:17
[INFO] [stdout]    |
[INFO] [stdout] 34 | #[derive(Debug, Collect)]
[INFO] [stdout]    |                 ^------
[INFO] [stdout]    |                 |
[INFO] [stdout]    |                 `MustNotImplDrop` is not local
[INFO] [stdout]    |                 move the `impl` block outside of this constant `_DERIVE_gc_arena_MustNotImplDrop_FOR_MapWith`
[INFO] [stdout] 35 | #[collect(no_drop)]
[INFO] [stdout] 36 | pub struct MapWith<S, C, F>(S, Option<(C, StaticCollect<F>)>);
[INFO] [stdout]    |            ------- `MapWith` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Collect` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Collect` may come from an old version of the `gc_arena_derive` crate, try updating your dependency with `cargo update -p gc_arena_derive`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]    = note: this warning originates in the derive macro `Collect` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]  --> src/map_result.rs:6:17
[INFO] [stdout]   |
[INFO] [stdout] 6 | #[derive(Debug, Collect)]
[INFO] [stdout]   |                 ^------
[INFO] [stdout]   |                 |
[INFO] [stdout]   |                 `Collect` is not local
[INFO] [stdout]   |                 move the `impl` block outside of this constant `_DERIVE_gc_arena_Collect_FOR_MapOk`
[INFO] [stdout] 7 | #[collect(no_drop)]
[INFO] [stdout] 8 | pub struct MapOk<S, F>(S, Option<StaticCollect<F>>);
[INFO] [stdout]   |            ----- `MapOk` is not local
[INFO] [stdout]   |
[INFO] [stdout]   = note: the derive macro `Collect` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]   = note: the derive macro `Collect` may come from an old version of the `gc_arena_derive` crate, try updating your dependency with `cargo update -p gc_arena_derive`
[INFO] [stdout]   = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]   = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]   = note: this warning originates in the derive macro `Collect` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]  --> src/map_result.rs:6:17
[INFO] [stdout]   |
[INFO] [stdout] 6 | #[derive(Debug, Collect)]
[INFO] [stdout]   |                 ^------
[INFO] [stdout]   |                 |
[INFO] [stdout]   |                 `MustNotImplDrop` is not local
[INFO] [stdout]   |                 move the `impl` block outside of this constant `_DERIVE_gc_arena_MustNotImplDrop_FOR_MapOk`
[INFO] [stdout] 7 | #[collect(no_drop)]
[INFO] [stdout] 8 | pub struct MapOk<S, F>(S, Option<StaticCollect<F>>);
[INFO] [stdout]   |            ----- `MapOk` is not local
[INFO] [stdout]   |
[INFO] [stdout]   = note: the derive macro `Collect` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]   = note: the derive macro `Collect` may come from an old version of the `gc_arena_derive` crate, try updating your dependency with `cargo update -p gc_arena_derive`
[INFO] [stdout]   = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]   = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]   = note: this warning originates in the derive macro `Collect` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/map_result.rs:37:17
[INFO] [stdout]    |
[INFO] [stdout] 37 | #[derive(Debug, Collect)]
[INFO] [stdout]    |                 ^------
[INFO] [stdout]    |                 |
[INFO] [stdout]    |                 `Collect` is not local
[INFO] [stdout]    |                 move the `impl` block outside of this constant `_DERIVE_gc_arena_Collect_FOR_MapOkWith`
[INFO] [stdout] 38 | #[collect(no_drop)]
[INFO] [stdout] 39 | pub struct MapOkWith<S, C, F>(S, Option<(C, StaticCollect<F>)>);
[INFO] [stdout]    |            --------- `MapOkWith` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Collect` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Collect` may come from an old version of the `gc_arena_derive` crate, try updating your dependency with `cargo update -p gc_arena_derive`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]    = note: this warning originates in the derive macro `Collect` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/map_result.rs:37:17
[INFO] [stdout]    |
[INFO] [stdout] 37 | #[derive(Debug, Collect)]
[INFO] [stdout]    |                 ^------
[INFO] [stdout]    |                 |
[INFO] [stdout]    |                 `MustNotImplDrop` is not local
[INFO] [stdout]    |                 move the `impl` block outside of this constant `_DERIVE_gc_arena_MustNotImplDrop_FOR_MapOkWith`
[INFO] [stdout] 38 | #[collect(no_drop)]
[INFO] [stdout] 39 | pub struct MapOkWith<S, C, F>(S, Option<(C, StaticCollect<F>)>);
[INFO] [stdout]    |            --------- `MapOkWith` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Collect` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Collect` may come from an old version of the `gc_arena_derive` crate, try updating your dependency with `cargo update -p gc_arena_derive`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]    = note: this warning originates in the derive macro `Collect` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/map_result.rs:68:17
[INFO] [stdout]    |
[INFO] [stdout] 68 | #[derive(Debug, Collect)]
[INFO] [stdout]    |                 ^------
[INFO] [stdout]    |                 |
[INFO] [stdout]    |                 `Collect` is not local
[INFO] [stdout]    |                 move the `impl` block outside of this constant `_DERIVE_gc_arena_Collect_FOR_MapError`
[INFO] [stdout] 69 | #[collect(no_drop)]
[INFO] [stdout] 70 | pub struct MapError<S, F>(S, Option<StaticCollect<F>>);
[INFO] [stdout]    |            -------- `MapError` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Collect` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Collect` may come from an old version of the `gc_arena_derive` crate, try updating your dependency with `cargo update -p gc_arena_derive`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]    = note: this warning originates in the derive macro `Collect` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/map_result.rs:68:17
[INFO] [stdout]    |
[INFO] [stdout] 68 | #[derive(Debug, Collect)]
[INFO] [stdout]    |                 ^------
[INFO] [stdout]    |                 |
[INFO] [stdout]    |                 `MustNotImplDrop` is not local
[INFO] [stdout]    |                 move the `impl` block outside of this constant `_DERIVE_gc_arena_MustNotImplDrop_FOR_MapError`
[INFO] [stdout] 69 | #[collect(no_drop)]
[INFO] [stdout] 70 | pub struct MapError<S, F>(S, Option<StaticCollect<F>>);
[INFO] [stdout]    |            -------- `MapError` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Collect` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Collect` may come from an old version of the `gc_arena_derive` crate, try updating your dependency with `cargo update -p gc_arena_derive`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]    = note: this warning originates in the derive macro `Collect` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/sequence_fn.rs:13:17
[INFO] [stdout]    |
[INFO] [stdout] 13 | #[derive(Debug, Collect)]
[INFO] [stdout]    |                 ^------
[INFO] [stdout]    |                 |
[INFO] [stdout]    |                 `Collect` is not local
[INFO] [stdout]    |                 move the `impl` block outside of this constant `_DERIVE_gc_arena_Collect_FOR_SequenceFn`
[INFO] [stdout] 14 | #[collect(no_drop)]
[INFO] [stdout] 15 | pub struct SequenceFn<F>(Option<StaticCollect<F>>);
[INFO] [stdout]    |            ---------- `SequenceFn` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Collect` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Collect` may come from an old version of the `gc_arena_derive` crate, try updating your dependency with `cargo update -p gc_arena_derive`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]    = note: this warning originates in the derive macro `Collect` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/sequence_fn.rs:13:17
[INFO] [stdout]    |
[INFO] [stdout] 13 | #[derive(Debug, Collect)]
[INFO] [stdout]    |                 ^------
[INFO] [stdout]    |                 |
[INFO] [stdout]    |                 `MustNotImplDrop` is not local
[INFO] [stdout]    |                 move the `impl` block outside of this constant `_DERIVE_gc_arena_MustNotImplDrop_FOR_SequenceFn`
[INFO] [stdout] 14 | #[collect(no_drop)]
[INFO] [stdout] 15 | pub struct SequenceFn<F>(Option<StaticCollect<F>>);
[INFO] [stdout]    |            ---------- `SequenceFn` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Collect` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Collect` may come from an old version of the `gc_arena_derive` crate, try updating your dependency with `cargo update -p gc_arena_derive`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]    = note: this warning originates in the derive macro `Collect` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/sequence_fn.rs:45:17
[INFO] [stdout]    |
[INFO] [stdout] 45 | #[derive(Debug, Collect)]
[INFO] [stdout]    |                 ^------
[INFO] [stdout]    |                 |
[INFO] [stdout]    |                 `Collect` is not local
[INFO] [stdout]    |                 move the `impl` block outside of this constant `_DERIVE_gc_arena_Collect_FOR_SequenceFnWith`
[INFO] [stdout] 46 | #[collect(no_drop)]
[INFO] [stdout] 47 | pub struct SequenceFnWith<C, F>(Option<(C, StaticCollect<F>)>);
[INFO] [stdout]    |            -------------- `SequenceFnWith` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Collect` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Collect` may come from an old version of the `gc_arena_derive` crate, try updating your dependency with `cargo update -p gc_arena_derive`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]    = note: this warning originates in the derive macro `Collect` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/sequence_fn.rs:45:17
[INFO] [stdout]    |
[INFO] [stdout] 45 | #[derive(Debug, Collect)]
[INFO] [stdout]    |                 ^------
[INFO] [stdout]    |                 |
[INFO] [stdout]    |                 `MustNotImplDrop` is not local
[INFO] [stdout]    |                 move the `impl` block outside of this constant `_DERIVE_gc_arena_MustNotImplDrop_FOR_SequenceFnWith`
[INFO] [stdout] 46 | #[collect(no_drop)]
[INFO] [stdout] 47 | pub struct SequenceFnWith<C, F>(Option<(C, StaticCollect<F>)>);
[INFO] [stdout]    |            -------------- `SequenceFnWith` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Collect` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Collect` may come from an old version of the `gc_arena_derive` crate, try updating your dependency with `cargo update -p gc_arena_derive`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]    = note: this warning originates in the derive macro `Collect` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]  --> src/then.rs:6:17
[INFO] [stdout]   |
[INFO] [stdout] 6 | #[derive(Debug, Collect)]
[INFO] [stdout]   |                 ^------
[INFO] [stdout]   |                 |
[INFO] [stdout]   |                 `Collect` is not local
[INFO] [stdout]   |                 move the `impl` block outside of this constant `_DERIVE_gc_arena_Collect_FOR_Then`
[INFO] [stdout] 7 | #[collect(no_drop)]
[INFO] [stdout] 8 | pub enum Then<'gc, S, F>
[INFO] [stdout]   |          ---- `Then` is not local
[INFO] [stdout]   |
[INFO] [stdout]   = note: the derive macro `Collect` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]   = note: the derive macro `Collect` may come from an old version of the `gc_arena_derive` crate, try updating your dependency with `cargo update -p gc_arena_derive`
[INFO] [stdout]   = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]   = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]   = note: this warning originates in the derive macro `Collect` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]  --> src/then.rs:6:17
[INFO] [stdout]   |
[INFO] [stdout] 6 | #[derive(Debug, Collect)]
[INFO] [stdout]   |                 ^------
[INFO] [stdout]   |                 |
[INFO] [stdout]   |                 `MustNotImplDrop` is not local
[INFO] [stdout]   |                 move the `impl` block outside of this constant `_DERIVE_gc_arena_MustNotImplDrop_FOR_Then`
[INFO] [stdout] 7 | #[collect(no_drop)]
[INFO] [stdout] 8 | pub enum Then<'gc, S, F>
[INFO] [stdout]   |          ---- `Then` is not local
[INFO] [stdout]   |
[INFO] [stdout]   = note: the derive macro `Collect` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]   = note: the derive macro `Collect` may come from an old version of the `gc_arena_derive` crate, try updating your dependency with `cargo update -p gc_arena_derive`
[INFO] [stdout]   = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]   = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]   = note: this warning originates in the derive macro `Collect` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/then.rs:51:17
[INFO] [stdout]    |
[INFO] [stdout] 51 | #[derive(Debug, Collect)]
[INFO] [stdout]    |                 ^------
[INFO] [stdout]    |                 |
[INFO] [stdout]    |                 `Collect` is not local
[INFO] [stdout]    |                 move the `impl` block outside of this constant `_DERIVE_gc_arena_Collect_FOR_ThenWith`
[INFO] [stdout] 52 | #[collect(no_drop)]
[INFO] [stdout] 53 | pub enum ThenWith<'gc, S, C, F>
[INFO] [stdout]    |          -------- `ThenWith` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Collect` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Collect` may come from an old version of the `gc_arena_derive` crate, try updating your dependency with `cargo update -p gc_arena_derive`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]    = note: this warning originates in the derive macro `Collect` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/then.rs:51:17
[INFO] [stdout]    |
[INFO] [stdout] 51 | #[derive(Debug, Collect)]
[INFO] [stdout]    |                 ^------
[INFO] [stdout]    |                 |
[INFO] [stdout]    |                 `MustNotImplDrop` is not local
[INFO] [stdout]    |                 move the `impl` block outside of this constant `_DERIVE_gc_arena_MustNotImplDrop_FOR_ThenWith`
[INFO] [stdout] 52 | #[collect(no_drop)]
[INFO] [stdout] 53 | pub enum ThenWith<'gc, S, C, F>
[INFO] [stdout]    |          -------- `ThenWith` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Collect` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Collect` may come from an old version of the `gc_arena_derive` crate, try updating your dependency with `cargo update -p gc_arena_derive`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]    = note: this warning originates in the derive macro `Collect` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]  --> src/and_then.rs:6:17
[INFO] [stdout]   |
[INFO] [stdout] 6 | #[derive(Debug, Collect)]
[INFO] [stdout]   |                 ^------
[INFO] [stdout]   |                 |
[INFO] [stdout]   |                 `Collect` is not local
[INFO] [stdout]   |                 move the `impl` block outside of this constant `_DERIVE_gc_arena_Collect_FOR_AndThen`
[INFO] [stdout] 7 | #[collect(no_drop)]
[INFO] [stdout] 8 | pub enum AndThen<S, F, I> {
[INFO] [stdout]   |          ------- `AndThen` is not local
[INFO] [stdout]   |
[INFO] [stdout]   = note: the derive macro `Collect` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]   = note: the derive macro `Collect` may come from an old version of the `gc_arena_derive` crate, try updating your dependency with `cargo update -p gc_arena_derive`
[INFO] [stdout]   = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]   = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]   = note: `#[warn(non_local_definitions)]` on by default
[INFO] [stdout]   = note: this warning originates in the derive macro `Collect` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]  --> src/and_then.rs:6:17
[INFO] [stdout]   |
[INFO] [stdout] 6 | #[derive(Debug, Collect)]
[INFO] [stdout]   |                 ^------
[INFO] [stdout]   |                 |
[INFO] [stdout]   |                 `MustNotImplDrop` is not local
[INFO] [stdout]   |                 move the `impl` block outside of this constant `_DERIVE_gc_arena_MustNotImplDrop_FOR_AndThen`
[INFO] [stdout] 7 | #[collect(no_drop)]
[INFO] [stdout] 8 | pub enum AndThen<S, F, I> {
[INFO] [stdout]   |          ------- `AndThen` is not local
[INFO] [stdout]   |
[INFO] [stdout]   = note: the derive macro `Collect` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]   = note: the derive macro `Collect` may come from an old version of the `gc_arena_derive` crate, try updating your dependency with `cargo update -p gc_arena_derive`
[INFO] [stdout]   = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]   = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]   = note: this warning originates in the derive macro `Collect` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/and_then.rs:49:17
[INFO] [stdout]    |
[INFO] [stdout] 49 | #[derive(Debug, Collect)]
[INFO] [stdout]    |                 ^------
[INFO] [stdout]    |                 |
[INFO] [stdout]    |                 `Collect` is not local
[INFO] [stdout]    |                 move the `impl` block outside of this constant `_DERIVE_gc_arena_Collect_FOR_AndThenWith`
[INFO] [stdout] 50 | #[collect(no_drop)]
[INFO] [stdout] 51 | pub enum AndThenWith<S, C, F, I> {
[INFO] [stdout]    |          ----------- `AndThenWith` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Collect` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Collect` may come from an old version of the `gc_arena_derive` crate, try updating your dependency with `cargo update -p gc_arena_derive`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]    = note: this warning originates in the derive macro `Collect` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/and_then.rs:49:17
[INFO] [stdout]    |
[INFO] [stdout] 49 | #[derive(Debug, Collect)]
[INFO] [stdout]    |                 ^------
[INFO] [stdout]    |                 |
[INFO] [stdout]    |                 `MustNotImplDrop` is not local
[INFO] [stdout]    |                 move the `impl` block outside of this constant `_DERIVE_gc_arena_MustNotImplDrop_FOR_AndThenWith`
[INFO] [stdout] 50 | #[collect(no_drop)]
[INFO] [stdout] 51 | pub enum AndThenWith<S, C, F, I> {
[INFO] [stdout]    |          ----------- `AndThenWith` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Collect` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Collect` may come from an old version of the `gc_arena_derive` crate, try updating your dependency with `cargo update -p gc_arena_derive`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]    = note: this warning originates in the derive macro `Collect` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]  --> src/done.rs:6:17
[INFO] [stdout]   |
[INFO] [stdout] 6 | #[derive(Debug, Collect)]
[INFO] [stdout]   |                 ^------
[INFO] [stdout]   |                 |
[INFO] [stdout]   |                 `Collect` is not local
[INFO] [stdout]   |                 move the `impl` block outside of this constant `_DERIVE_gc_arena_Collect_FOR_Done`
[INFO] [stdout] 7 | #[collect(no_drop)]
[INFO] [stdout] 8 | pub struct Done<O>(Option<O>);
[INFO] [stdout]   |            ---- `Done` is not local
[INFO] [stdout]   |
[INFO] [stdout]   = note: the derive macro `Collect` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]   = note: the derive macro `Collect` may come from an old version of the `gc_arena_derive` crate, try updating your dependency with `cargo update -p gc_arena_derive`
[INFO] [stdout]   = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]   = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]   = note: this warning originates in the derive macro `Collect` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]  --> src/done.rs:6:17
[INFO] [stdout]   |
[INFO] [stdout] 6 | #[derive(Debug, Collect)]
[INFO] [stdout]   |                 ^------
[INFO] [stdout]   |                 |
[INFO] [stdout]   |                 `MustNotImplDrop` is not local
[INFO] [stdout]   |                 move the `impl` block outside of this constant `_DERIVE_gc_arena_MustNotImplDrop_FOR_Done`
[INFO] [stdout] 7 | #[collect(no_drop)]
[INFO] [stdout] 8 | pub struct Done<O>(Option<O>);
[INFO] [stdout]   |            ---- `Done` is not local
[INFO] [stdout]   |
[INFO] [stdout]   = note: the derive macro `Collect` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]   = note: the derive macro `Collect` may come from an old version of the `gc_arena_derive` crate, try updating your dependency with `cargo update -p gc_arena_derive`
[INFO] [stdout]   = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]   = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]   = note: this warning originates in the derive macro `Collect` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]  --> src/flatten.rs:6:10
[INFO] [stdout]   |
[INFO] [stdout] 6 | #[derive(Collect)]
[INFO] [stdout]   |          ^------
[INFO] [stdout]   |          |
[INFO] [stdout]   |          `Collect` is not local
[INFO] [stdout]   |          move the `impl` block outside of this constant `_DERIVE_gc_arena_Collect_FOR_Flatten`
[INFO] [stdout] 7 | #[collect(no_drop)]
[INFO] [stdout] 8 | pub enum Flatten<'gc, S>
[INFO] [stdout]   |          ------- `Flatten` is not local
[INFO] [stdout]   |
[INFO] [stdout]   = note: the derive macro `Collect` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]   = note: the derive macro `Collect` may come from an old version of the `gc_arena_derive` crate, try updating your dependency with `cargo update -p gc_arena_derive`
[INFO] [stdout]   = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]   = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]   = note: this warning originates in the derive macro `Collect` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]  --> src/flatten.rs:6:10
[INFO] [stdout]   |
[INFO] [stdout] 6 | #[derive(Collect)]
[INFO] [stdout]   |          ^------
[INFO] [stdout]   |          |
[INFO] [stdout]   |          `MustNotImplDrop` is not local
[INFO] [stdout]   |          move the `impl` block outside of this constant `_DERIVE_gc_arena_MustNotImplDrop_FOR_Flatten`
[INFO] [stdout] 7 | #[collect(no_drop)]
[INFO] [stdout] 8 | pub enum Flatten<'gc, S>
[INFO] [stdout]   |          ------- `Flatten` is not local
[INFO] [stdout]   |
[INFO] [stdout]   = note: the derive macro `Collect` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]   = note: the derive macro `Collect` may come from an old version of the `gc_arena_derive` crate, try updating your dependency with `cargo update -p gc_arena_derive`
[INFO] [stdout]   = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]   = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]   = note: this warning originates in the derive macro `Collect` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]  --> src/flatten_result.rs:6:10
[INFO] [stdout]   |
[INFO] [stdout] 6 | #[derive(Collect)]
[INFO] [stdout]   |          ^------
[INFO] [stdout]   |          |
[INFO] [stdout]   |          `Collect` is not local
[INFO] [stdout]   |          move the `impl` block outside of this constant `_DERIVE_gc_arena_Collect_FOR_FlattenOk`
[INFO] [stdout] 7 | #[collect(no_drop)]
[INFO] [stdout] 8 | pub enum FlattenOk<S, I> {
[INFO] [stdout]   |          --------- `FlattenOk` is not local
[INFO] [stdout]   |
[INFO] [stdout]   = note: the derive macro `Collect` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]   = note: the derive macro `Collect` may come from an old version of the `gc_arena_derive` crate, try updating your dependency with `cargo update -p gc_arena_derive`
[INFO] [stdout]   = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]   = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]   = note: this warning originates in the derive macro `Collect` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]  --> src/flatten_result.rs:6:10
[INFO] [stdout]   |
[INFO] [stdout] 6 | #[derive(Collect)]
[INFO] [stdout]   |          ^------
[INFO] [stdout]   |          |
[INFO] [stdout]   |          `MustNotImplDrop` is not local
[INFO] [stdout]   |          move the `impl` block outside of this constant `_DERIVE_gc_arena_MustNotImplDrop_FOR_FlattenOk`
[INFO] [stdout] 7 | #[collect(no_drop)]
[INFO] [stdout] 8 | pub enum FlattenOk<S, I> {
[INFO] [stdout]   |          --------- `FlattenOk` is not local
[INFO] [stdout]   |
[INFO] [stdout]   = note: the derive macro `Collect` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]   = note: the derive macro `Collect` may come from an old version of the `gc_arena_derive` crate, try updating your dependency with `cargo update -p gc_arena_derive`
[INFO] [stdout]   = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]   = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]   = note: this warning originates in the derive macro `Collect` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]  --> src/map.rs:6:17
[INFO] [stdout]   |
[INFO] [stdout] 6 | #[derive(Debug, Collect)]
[INFO] [stdout]   |                 ^------
[INFO] [stdout]   |                 |
[INFO] [stdout]   |                 `Collect` is not local
[INFO] [stdout]   |                 move the `impl` block outside of this constant `_DERIVE_gc_arena_Collect_FOR_Map`
[INFO] [stdout] 7 | #[collect(no_drop)]
[INFO] [stdout] 8 | pub struct Map<S, F>(S, Option<StaticCollect<F>>);
[INFO] [stdout]   |            --- `Map` is not local
[INFO] [stdout]   |
[INFO] [stdout]   = note: the derive macro `Collect` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]   = note: the derive macro `Collect` may come from an old version of the `gc_arena_derive` crate, try updating your dependency with `cargo update -p gc_arena_derive`
[INFO] [stdout]   = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]   = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]   = note: this warning originates in the derive macro `Collect` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]  --> src/map.rs:6:17
[INFO] [stdout]   |
[INFO] [stdout] 6 | #[derive(Debug, Collect)]
[INFO] [stdout]   |                 ^------
[INFO] [stdout]   |                 |
[INFO] [stdout]   |                 `MustNotImplDrop` is not local
[INFO] [stdout]   |                 move the `impl` block outside of this constant `_DERIVE_gc_arena_MustNotImplDrop_FOR_Map`
[INFO] [stdout] 7 | #[collect(no_drop)]
[INFO] [stdout] 8 | pub struct Map<S, F>(S, Option<StaticCollect<F>>);
[INFO] [stdout]   |            --- `Map` is not local
[INFO] [stdout]   |
[INFO] [stdout]   = note: the derive macro `Collect` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]   = note: the derive macro `Collect` may come from an old version of the `gc_arena_derive` crate, try updating your dependency with `cargo update -p gc_arena_derive`
[INFO] [stdout]   = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]   = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]   = note: this warning originates in the derive macro `Collect` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/map.rs:34:17
[INFO] [stdout]    |
[INFO] [stdout] 34 | #[derive(Debug, Collect)]
[INFO] [stdout]    |                 ^------
[INFO] [stdout]    |                 |
[INFO] [stdout]    |                 `Collect` is not local
[INFO] [stdout]    |                 move the `impl` block outside of this constant `_DERIVE_gc_arena_Collect_FOR_MapWith`
[INFO] [stdout] 35 | #[collect(no_drop)]
[INFO] [stdout] 36 | pub struct MapWith<S, C, F>(S, Option<(C, StaticCollect<F>)>);
[INFO] [stdout]    |            ------- `MapWith` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Collect` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Collect` may come from an old version of the `gc_arena_derive` crate, try updating your dependency with `cargo update -p gc_arena_derive`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]    = note: this warning originates in the derive macro `Collect` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/map.rs:34:17
[INFO] [stdout]    |
[INFO] [stdout] 34 | #[derive(Debug, Collect)]
[INFO] [stdout]    |                 ^------
[INFO] [stdout]    |                 |
[INFO] [stdout]    |                 `MustNotImplDrop` is not local
[INFO] [stdout]    |                 move the `impl` block outside of this constant `_DERIVE_gc_arena_MustNotImplDrop_FOR_MapWith`
[INFO] [stdout] 35 | #[collect(no_drop)]
[INFO] [stdout] 36 | pub struct MapWith<S, C, F>(S, Option<(C, StaticCollect<F>)>);
[INFO] [stdout]    |            ------- `MapWith` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Collect` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Collect` may come from an old version of the `gc_arena_derive` crate, try updating your dependency with `cargo update -p gc_arena_derive`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]    = note: this warning originates in the derive macro `Collect` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]  --> src/map_result.rs:6:17
[INFO] [stdout]   |
[INFO] [stdout] 6 | #[derive(Debug, Collect)]
[INFO] [stdout]   |                 ^------
[INFO] [stdout]   |                 |
[INFO] [stdout]   |                 `Collect` is not local
[INFO] [stdout]   |                 move the `impl` block outside of this constant `_DERIVE_gc_arena_Collect_FOR_MapOk`
[INFO] [stdout] 7 | #[collect(no_drop)]
[INFO] [stdout] 8 | pub struct MapOk<S, F>(S, Option<StaticCollect<F>>);
[INFO] [stdout]   |            ----- `MapOk` is not local
[INFO] [stdout]   |
[INFO] [stdout]   = note: the derive macro `Collect` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]   = note: the derive macro `Collect` may come from an old version of the `gc_arena_derive` crate, try updating your dependency with `cargo update -p gc_arena_derive`
[INFO] [stdout]   = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]   = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]   = note: this warning originates in the derive macro `Collect` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]  --> src/map_result.rs:6:17
[INFO] [stdout]   |
[INFO] [stdout] 6 | #[derive(Debug, Collect)]
[INFO] [stdout]   |                 ^------
[INFO] [stdout]   |                 |
[INFO] [stdout]   |                 `MustNotImplDrop` is not local
[INFO] [stdout]   |                 move the `impl` block outside of this constant `_DERIVE_gc_arena_MustNotImplDrop_FOR_MapOk`
[INFO] [stdout] 7 | #[collect(no_drop)]
[INFO] [stdout] 8 | pub struct MapOk<S, F>(S, Option<StaticCollect<F>>);
[INFO] [stdout]   |            ----- `MapOk` is not local
[INFO] [stdout]   |
[INFO] [stdout]   = note: the derive macro `Collect` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]   = note: the derive macro `Collect` may come from an old version of the `gc_arena_derive` crate, try updating your dependency with `cargo update -p gc_arena_derive`
[INFO] [stdout]   = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]   = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]   = note: this warning originates in the derive macro `Collect` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/map_result.rs:37:17
[INFO] [stdout]    |
[INFO] [stdout] 37 | #[derive(Debug, Collect)]
[INFO] [stdout]    |                 ^------
[INFO] [stdout]    |                 |
[INFO] [stdout]    |                 `Collect` is not local
[INFO] [stdout]    |                 move the `impl` block outside of this constant `_DERIVE_gc_arena_Collect_FOR_MapOkWith`
[INFO] [stdout] 38 | #[collect(no_drop)]
[INFO] [stdout] 39 | pub struct MapOkWith<S, C, F>(S, Option<(C, StaticCollect<F>)>);
[INFO] [stdout]    |            --------- `MapOkWith` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Collect` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Collect` may come from an old version of the `gc_arena_derive` crate, try updating your dependency with `cargo update -p gc_arena_derive`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]    = note: this warning originates in the derive macro `Collect` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/map_result.rs:37:17
[INFO] [stdout]    |
[INFO] [stdout] 37 | #[derive(Debug, Collect)]
[INFO] [stdout]    |                 ^------
[INFO] [stdout]    |                 |
[INFO] [stdout]    |                 `MustNotImplDrop` is not local
[INFO] [stdout]    |                 move the `impl` block outside of this constant `_DERIVE_gc_arena_MustNotImplDrop_FOR_MapOkWith`
[INFO] [stdout] 38 | #[collect(no_drop)]
[INFO] [stdout] 39 | pub struct MapOkWith<S, C, F>(S, Option<(C, StaticCollect<F>)>);
[INFO] [stdout]    |            --------- `MapOkWith` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Collect` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Collect` may come from an old version of the `gc_arena_derive` crate, try updating your dependency with `cargo update -p gc_arena_derive`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]    = note: this warning originates in the derive macro `Collect` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/map_result.rs:68:17
[INFO] [stdout]    |
[INFO] [stdout] 68 | #[derive(Debug, Collect)]
[INFO] [stdout]    |                 ^------
[INFO] [stdout]    |                 |
[INFO] [stdout]    |                 `Collect` is not local
[INFO] [stdout]    |                 move the `impl` block outside of this constant `_DERIVE_gc_arena_Collect_FOR_MapError`
[INFO] [stdout] 69 | #[collect(no_drop)]
[INFO] [stdout] 70 | pub struct MapError<S, F>(S, Option<StaticCollect<F>>);
[INFO] [stdout]    |            -------- `MapError` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Collect` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Collect` may come from an old version of the `gc_arena_derive` crate, try updating your dependency with `cargo update -p gc_arena_derive`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]    = note: this warning originates in the derive macro `Collect` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/map_result.rs:68:17
[INFO] [stdout]    |
[INFO] [stdout] 68 | #[derive(Debug, Collect)]
[INFO] [stdout]    |                 ^------
[INFO] [stdout]    |                 |
[INFO] [stdout]    |                 `MustNotImplDrop` is not local
[INFO] [stdout]    |                 move the `impl` block outside of this constant `_DERIVE_gc_arena_MustNotImplDrop_FOR_MapError`
[INFO] [stdout] 69 | #[collect(no_drop)]
[INFO] [stdout] 70 | pub struct MapError<S, F>(S, Option<StaticCollect<F>>);
[INFO] [stdout]    |            -------- `MapError` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Collect` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Collect` may come from an old version of the `gc_arena_derive` crate, try updating your dependency with `cargo update -p gc_arena_derive`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]    = note: this warning originates in the derive macro `Collect` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/sequence_fn.rs:13:17
[INFO] [stdout]    |
[INFO] [stdout] 13 | #[derive(Debug, Collect)]
[INFO] [stdout]    |                 ^------
[INFO] [stdout]    |                 |
[INFO] [stdout]    |                 `Collect` is not local
[INFO] [stdout]    |                 move the `impl` block outside of this constant `_DERIVE_gc_arena_Collect_FOR_SequenceFn`
[INFO] [stdout] 14 | #[collect(no_drop)]
[INFO] [stdout] 15 | pub struct SequenceFn<F>(Option<StaticCollect<F>>);
[INFO] [stdout]    |            ---------- `SequenceFn` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Collect` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Collect` may come from an old version of the `gc_arena_derive` crate, try updating your dependency with `cargo update -p gc_arena_derive`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]    = note: this warning originates in the derive macro `Collect` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/sequence_fn.rs:13:17
[INFO] [stdout]    |
[INFO] [stdout] 13 | #[derive(Debug, Collect)]
[INFO] [stdout]    |                 ^------
[INFO] [stdout]    |                 |
[INFO] [stdout]    |                 `MustNotImplDrop` is not local
[INFO] [stdout]    |                 move the `impl` block outside of this constant `_DERIVE_gc_arena_MustNotImplDrop_FOR_SequenceFn`
[INFO] [stdout] 14 | #[collect(no_drop)]
[INFO] [stdout] 15 | pub struct SequenceFn<F>(Option<StaticCollect<F>>);
[INFO] [stdout]    |            ---------- `SequenceFn` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Collect` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Collect` may come from an old version of the `gc_arena_derive` crate, try updating your dependency with `cargo update -p gc_arena_derive`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]    = note: this warning originates in the derive macro `Collect` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/sequence_fn.rs:45:17
[INFO] [stdout]    |
[INFO] [stdout] 45 | #[derive(Debug, Collect)]
[INFO] [stdout]    |                 ^------
[INFO] [stdout]    |                 |
[INFO] [stdout]    |                 `Collect` is not local
[INFO] [stdout]    |                 move the `impl` block outside of this constant `_DERIVE_gc_arena_Collect_FOR_SequenceFnWith`
[INFO] [stdout] 46 | #[collect(no_drop)]
[INFO] [stdout] 47 | pub struct SequenceFnWith<C, F>(Option<(C, StaticCollect<F>)>);
[INFO] [stdout]    |            -------------- `SequenceFnWith` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Collect` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Collect` may come from an old version of the `gc_arena_derive` crate, try updating your dependency with `cargo update -p gc_arena_derive`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]    = note: this warning originates in the derive macro `Collect` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/sequence_fn.rs:45:17
[INFO] [stdout]    |
[INFO] [stdout] 45 | #[derive(Debug, Collect)]
[INFO] [stdout]    |                 ^------
[INFO] [stdout]    |                 |
[INFO] [stdout]    |                 `MustNotImplDrop` is not local
[INFO] [stdout]    |                 move the `impl` block outside of this constant `_DERIVE_gc_arena_MustNotImplDrop_FOR_SequenceFnWith`
[INFO] [stdout] 46 | #[collect(no_drop)]
[INFO] [stdout] 47 | pub struct SequenceFnWith<C, F>(Option<(C, StaticCollect<F>)>);
[INFO] [stdout]    |            -------------- `SequenceFnWith` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Collect` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Collect` may come from an old version of the `gc_arena_derive` crate, try updating your dependency with `cargo update -p gc_arena_derive`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]    = note: this warning originates in the derive macro `Collect` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]  --> src/then.rs:6:17
[INFO] [stdout]   |
[INFO] [stdout] 6 | #[derive(Debug, Collect)]
[INFO] [stdout]   |                 ^------
[INFO] [stdout]   |                 |
[INFO] [stdout]   |                 `Collect` is not local
[INFO] [stdout]   |                 move the `impl` block outside of this constant `_DERIVE_gc_arena_Collect_FOR_Then`
[INFO] [stdout] 7 | #[collect(no_drop)]
[INFO] [stdout] 8 | pub enum Then<'gc, S, F>
[INFO] [stdout]   |          ---- `Then` is not local
[INFO] [stdout]   |
[INFO] [stdout]   = note: the derive macro `Collect` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]   = note: the derive macro `Collect` may come from an old version of the `gc_arena_derive` crate, try updating your dependency with `cargo update -p gc_arena_derive`
[INFO] [stdout]   = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]   = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]   = note: this warning originates in the derive macro `Collect` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]  --> src/then.rs:6:17
[INFO] [stdout]   |
[INFO] [stdout] 6 | #[derive(Debug, Collect)]
[INFO] [stdout]   |                 ^------
[INFO] [stdout]   |                 |
[INFO] [stdout]   |                 `MustNotImplDrop` is not local
[INFO] [stdout]   |                 move the `impl` block outside of this constant `_DERIVE_gc_arena_MustNotImplDrop_FOR_Then`
[INFO] [stdout] 7 | #[collect(no_drop)]
[INFO] [stdout] 8 | pub enum Then<'gc, S, F>
[INFO] [stdout]   |          ---- `Then` is not local
[INFO] [stdout]   |
[INFO] [stdout]   = note: the derive macro `Collect` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]   = note: the derive macro `Collect` may come from an old version of the `gc_arena_derive` crate, try updating your dependency with `cargo update -p gc_arena_derive`
[INFO] [stdout]   = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]   = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]   = note: this warning originates in the derive macro `Collect` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/then.rs:51:17
[INFO] [stdout]    |
[INFO] [stdout] 51 | #[derive(Debug, Collect)]
[INFO] [stdout]    |                 ^------
[INFO] [stdout]    |                 |
[INFO] [stdout]    |                 `Collect` is not local
[INFO] [stdout]    |                 move the `impl` block outside of this constant `_DERIVE_gc_arena_Collect_FOR_ThenWith`
[INFO] [stdout] 52 | #[collect(no_drop)]
[INFO] [stdout] 53 | pub enum ThenWith<'gc, S, C, F>
[INFO] [stdout]    |          -------- `ThenWith` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Collect` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Collect` may come from an old version of the `gc_arena_derive` crate, try updating your dependency with `cargo update -p gc_arena_derive`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]    = note: this warning originates in the derive macro `Collect` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/then.rs:51:17
[INFO] [stdout]    |
[INFO] [stdout] 51 | #[derive(Debug, Collect)]
[INFO] [stdout]    |                 ^------
[INFO] [stdout]    |                 |
[INFO] [stdout]    |                 `MustNotImplDrop` is not local
[INFO] [stdout]    |                 move the `impl` block outside of this constant `_DERIVE_gc_arena_MustNotImplDrop_FOR_ThenWith`
[INFO] [stdout] 52 | #[collect(no_drop)]
[INFO] [stdout] 53 | pub enum ThenWith<'gc, S, C, F>
[INFO] [stdout]    |          -------- `ThenWith` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Collect` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Collect` may come from an old version of the `gc_arena_derive` crate, try updating your dependency with `cargo update -p gc_arena_derive`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]    = note: this warning originates in the derive macro `Collect` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0782]: expected a type, found a trait
[INFO] [stdout]   --> tests/tests.rs:10:1
[INFO] [stdout]    |
[INFO] [stdout] 10 | make_sequencable_arena!(test_sequencer, TestRoot);
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this error originates in the macro `make_sequencable_arena` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] For more information about this error, try `rustc --explain E0782`.
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `gc-sequence` (test "tests") due to 1 previous error
[INFO] running `Command { std: "docker" "inspect" "8eb29a940d1e9222bfe5920de4aaf6613524b739176e7d78b89c1aa5d2e85d0a", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "8eb29a940d1e9222bfe5920de4aaf6613524b739176e7d78b89c1aa5d2e85d0a", kill_on_drop: false }`
[INFO] [stdout] 8eb29a940d1e9222bfe5920de4aaf6613524b739176e7d78b89c1aa5d2e85d0a
